package com.atguigu.spring_clound;

import java.util.concurrent.TimeUnit;

/*1. 先访问短信，再访问邮件，先打印短信还是邮件
2. 停4秒在短信方法内，先打印短信还是邮件
3. 先访问短信，再访问hello方法，是先打短信还是hello
4. 现在有两部手机，第一部发短信，第二部发邮件，先打印短信还是邮件
5. 两个静态同步方法，1部手机，先打印短信还是邮件
6. 两个静态同步方法，2部手机，先打印短信还是邮件
7. 1个静态同步方法，1个普通同步方法，1部手机，先打印短信还是邮件  what  can  i  say ??
8. 1个静态同步方法，1个普通同步方法，2部手机，先打印短信还是邮件*/
class Phone{
    public synchronized void  sendEmail(){
        try {
            TimeUnit.SECONDS.sleep(4);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        System.out.println(Thread.currentThread().getName()+"Email");
    }
    public synchronized void sendMessage(){
        System.out.println(Thread.currentThread().getName()+"Message");
    }
    public  void hello(){
        System.out.println("hello");
    }
}

public class EightClock {
    public static void main(String[] args){
        Phone phone1 = new Phone();
       Phone phone2 = new Phone();
new Thread(()->{phone1.sendEmail();},"t1").start();
        try {
            TimeUnit.SECONDS.sleep(10);
        } catch (InterruptedException e) {
           e.printStackTrace();
        }

        new Thread(()->{
          //  phone1.sendMessage();
           // phone1.hello();
            phone2.sendMessage();
            },"t2").start();
    }
}
